#include "initconnectwin.h"
#include <QDebug>
#include "generatetools.h"
#include "highlight-effect.h"

InitConnectWin::InitConnectWin(QWidget *parent) : QWidget(parent)
{
    m_interfaceWin = new InterfaceWin();
    m_usbConnWin = new UsbConnWin();
    m_stackedWin = new QStackedWidget(this);
    m_tabBar = new KTabBar(KTabBarStyle::SegmentDark, this);

    m_tabBar->addTab(tr("ScanCode"));
    m_tabBar->addTab(tr("USBConnect"));

    m_tabBar->setFixedSize(300, 36);

    connect(m_tabBar, &KTabBar::tabBarClicked, this, &InitConnectWin::slotTabBarClicked);

    // 设置堆栈窗口，三个显示窗口
    m_stackedWin->addWidget(m_interfaceWin); // 索引：0
    m_stackedWin->addWidget(m_usbConnWin);   // 索引：2

    QHBoxLayout *hLayout = new QHBoxLayout;
    hLayout->addStretch();
    hLayout->addWidget(m_tabBar);
    hLayout->addStretch();
    hLayout->setMargin(0);

    QVBoxLayout *vLayout = new QVBoxLayout;
    vLayout->addWidget(m_stackedWin);
    vLayout->addStretch();
    vLayout->addLayout(hLayout);
    vLayout->addStretch();
    vLayout->setMargin(0);

    setLayout(vLayout);
}

InitConnectWin::~InitConnectWin() {}

void InitConnectWin::setDefaultStatus()
{
    m_tabBar->setCurrentIndex(0);
    m_stackedWin->setCurrentIndex(0);
}

void InitConnectWin::setInterFaceCodeInfo(QString codeInfo)
{
    if (codeInfo.isEmpty()) {
        m_interfaceWin->setQRCode();
    } else {
        m_interfaceWin->setQRCode(codeInfo);
    }
}

void InitConnectWin::setOnConnection(bool isConnection)
{
    m_interfaceWin->setOnConnection(isConnection);
}

void InitConnectWin::setLightUI()
{
    m_usbConnWin->setLightUI();
}

void InitConnectWin::setDarkUI()
{
    m_usbConnWin->setDarkUI();
}

void InitConnectWin::slotTabBarClicked(int index)
{
    m_stackedWin->setCurrentIndex(index);
    // if (2 == index) {
    //     Q_EMIT sigUSBconnectBtnClicked();
    // }
    // switch (index) {
    // case 0:
    //     // WFIF扫码埋点
    //     GenerateTools::buriedPoint(kabase::BuriedPoint::PT::KylinMobileAssistantWifiConn);
    //     break;
    // case 1:
    //     // 设备发现埋点
    //     GenerateTools::buriedPoint(kabase::BuriedPoint::PT::KylinMobileAssistantDeviceDiscovery);
    //     break;
    // case 2:
    //     // USB连接埋点
    //     GenerateTools::buriedPoint(kabase::BuriedPoint::PT::KylinMobileAssistantUsbConn);
    //     break;

    // default:
    //     break;
    // }

    if (1 == index) {
        Q_EMIT sigUSBconnectBtnClicked();
    }
    switch (index) {
    case 0:
        // WFIF扫码埋点
        GenerateTools::buriedPoint(kabase::BuriedPoint::PT::KylinMobileAssistantWifiConn);
        break;
    case 1:
        // USB连接埋点
        GenerateTools::buriedPoint(kabase::BuriedPoint::PT::KylinMobileAssistantUsbConn);
        break;
    default:
        break;
    }
}
